package com.aifast.common.layui;

import cn.hutool.db.PageResult;
import com.aifast.common.global.Status;
import com.baomidou.mybatisplus.core.metadata.IPage;

/**
 * @author 符健
 * layui分页表格封装工具
 */
public class LayuiPageFactory {

    public static LayuiDataTable init(Object obj) {
        if (obj instanceof PageResult) {
            PageResult page = (PageResult) obj;
            return LayuiDataTable.builder()
                    .count(page.getTotal()).code(Status.SUCCESS.getCode()).msg(Status.SUCCESS.getName())
                    .data(page)
                    .build();
        } else if (obj instanceof IPage) {
            IPage page = (IPage) obj;
            return LayuiDataTable.builder()
                    .count(page.getTotal()).code(Status.SUCCESS.getCode()).msg(Status.SUCCESS.getName())
                    .data(page.getRecords())
                    .build();
        }
        return LayuiDataTable.builder()
                .count(0).code(Status.ERROR.getCode()).msg(Status.ERROR.getName())
                .data(null)
                .build();
    }

}
